博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BBS论坛(二十)
阅读量:5022 次
发布时间:2019-06-12

本文共 3415 字,大约阅读时间需要 11 分钟。

20.1.cms添加轮播图后台逻辑代码完成

(1)apps/models.py

from exts import dbfrom datetime import datetimeclass BannerModel(db.Model):    __tablename__ = 'banner'    id = db.Column(db.Integer, primary_key=True, autoincrement=True)    name = db.Column(db.String(255), nullable=False)    img_url = db.Column(db.String(255), nullable=False)    link_url = db.Column(db.String(255), nullable=False)    priority = db.Column(db.Integer, default=0)    create_time = db.Column(db.DateTime, default=datetime.now)

(2)manage.py

from apps.models import BannerModel

(3)生成到数据库

python manage.py db migratepython manage.py db upgrade

(4)cms/forms.py

class AddBannerForm(BaseForm):    name=StringField(validators=[InputRequired(message='请输入轮播图名称')])    img_url=StringField(validators=[InputRequired(message='请输入轮播图链接')])    link_url=StringField(validators=[InputRequired(message='请输入轮播图跳转链接')])    priority=IntegerField(validators=[InputRequired(message='请输入轮播图优先级')])

(5)cms/views.py

@bp.route('/abanner/',methods=['POST'])def abanner():    form=AddBannerForm(request.form)    if form.validate():        name=form.name.data        img_url=form.img_url.data        link_url=form.link_url.data        priority=form.priority.data        banner=BannerModel(name=name,img_url=img_url,link_url=link_url,priority=priority)        db.session.add(banner)        db.session.commit()        return restful.success()    else:        return restful.params_error(message=form.get_error())

 

20.2.cms添加轮播图前台逻辑完成

(1)cms/js/banner.js

$(function () {    $('#save_banner_btn').click(function (event) {        event.preventDefault();        var dialog = $('#banner-dialog');        var nameInput = $("input[name='name']");        var imgInput = $("input[name='img_url']");        var linkInput = $("input[name='link_url']");        var priorityInput = $("input[name='priority']");        var name = nameInput.val();        var img_url = imgInput.val();        var link_url = linkInput.val();        var priority = priorityInput.val();        if (!name || !img_url || !link_url || !priority) {            zlalert.alertInfo('请输入完整的轮播图数据');            return;        }        zlajax.post({            'url': '/cms/abanner/',            'data': {                'name': name,                'img_url': img_url,                'link_url': link_url,                'priority': priority            },            'success': function (data) {                if (data['code'] == 200) {                    dialog.modal('hide');                    window.location.reload()                } else {                    zlalert.alertInfo(data['message']);                }            },            'fail': function (error) {                zlalert.alertNetworkError()            }        });    });});

(2)cms/cms_banners.html

{% from 'common/_macros.html' import static %}

(3)cms/views.py

@bp.route('/banners/')@login_requireddef banners():    banners = BannerModel.query.all()    return render_template('cms/cms_banners.html',banners=banners)

(4)cms_banners.html

        {% for banner in banners %}                            {
{ banner.name }} {
{ banner.img_url }}
{
{ banner.link_url }}
{
{ banner.priority }} {
{ banner.create_time }} {% endfor %}

 

转载于:https://www.cnblogs.com/derek1184405959/p/9160866.html

你可能感兴趣的文章
学习python:day1
查看>>
css3动画属性
查看>>
第九次团队作业-测试报告与用户使用手册
查看>>
Equal Sides Of An Array
查看>>
CentOS笔记-用户和用户组管理
查看>>
Mongodb 基本命令
查看>>
Qt中QTableView中加入Check列实现
查看>>
“富豪相亲大会”究竟迷失了什么?
查看>>
控制文件的备份与恢复
查看>>
返回代码hdu 2054 A==B?
查看>>
Flink独立集群1
查看>>
iOS 8 地图
查看>>
20165235 第八周课下补做
查看>>
[leetcode] 1. Two Sum
查看>>
iOS 日常工作之常用宏定义大全
查看>>
PHP的SQL注入技术实现以及预防措施
查看>>
MVC Razor
查看>>
软件目录结构规范
查看>>
Windbg调试Sql Server 进程
查看>>
linux调度器系列
查看>>